Large object security - Mailing list pgsql-hackers

From Damon Cokenias
Subject Large object security
Date
Msg-id p04310104b8e5809e0001@[10.0.1.9]
Whole thread Raw
In response to Re: What's the CURRENT schema ?  (Fernando Nasser <fnasser@redhat.com>)
List pgsql-hackers
Hi all,

I see there's a TODO item for large object security, it's a feature I'd really like to see.  I'm willing to put in the
timeto write a patch, but know far to little about postgres internals and history to just dive in.  Has there been any
discussionon this list about what this feature should be or how it might be implemented?  I saw a passing reference to
"LOBLOCATORs" in the list archives, but that was all.
 

What's a LOB LOCATOR ? 

What about giving each large object its own permission flags? ex:

GRANT SELECT ON LARGE OBJECT 10291 TO USER webapp;
GRANT SELECT, DELETE, UPDATE ON LARGE OBJECT 10291 TO USER admin;

Default permission flags (and INSERT permissions) would be set at the table level.  All objects without specific
permissionswould use the table rules.  This allows for backward compatibility and convenience.
 

I think per-object security is important.  A user shouldn't be able to get at another user's data just by guessing the
rightOID.  Ideally, users without permission would not know there were objects in the database they were not allowed to
see.

I can also imagine a security scheme that uses rule/trigger syntax to give the user a hook to provide her own security
functions. I haven't thought that through, though.
 

Any thoughts?


-Damon


pgsql-hackers by date:

Previous
From: Andreas Scherbaum
Date:
Subject: Re: new food for the contrib/ directory
Next
From: Maarten.Boekhold@reuters.com
Date:
Subject: Re: Index Scans become Seq Scans after VACUUM ANALYSE